The present invention relates to a system and a method for developing an engine model.
Gas turbine state variable models (SVM) have long been employed to support the design, development, and testing of modern full authority digital engine controls (FADECS) as well as applications requiring real-time deployment of an engine model. Referring now to FIG. 1, the SVM 10 is a piecewise linear engine model representation. For control law applications, this allows a simple system identification to be performed in terms of transfer functions which in turn are used to determine the control gains and compensation for the various control loops that will govern the engine operation. This is performed across the flight envelope. Thus, the SVM must be representative of the engine dynamics at altitude as well as at sea level static conditions. This requirement is fulfilled by providing engine numerics at sea level as well as at several discrete altitude-Mach number combinations and by modeling the SVM in terms of corrected or referred parameters. Since SVM's are fairly simple models, they do not impose a computational burden and are favorably suited for real-time applications. This feature makes the SVM ideal for the applications mentioned above.
The SVM engine model typically consists of an n state piecewise linear structure which is valid across a flight envelope ranging from sea level static to approximately 50,000 feet altitude. The model states typically include the engine's shaft rotor speeds as well as several metal temperatures with the hot section modules (turbines and combustor) and high pressure compressor. The states, along with the output engine parameters being modeled (as well as their associated numerics) are expressed in terms of (standard day) corrected parameters and as such the model remains valid at non-International Standard Atmosphere (ISA) conditions. Appropriate correction factors are applied to inputs to correct parameters upon entering the model and the same correction applied in reverse to UN-correct the outputs. This process is depicted in FIG. 1.
The SVM consists of a linear state variable model described by a set of first order differential equations. In general, the outputs (y) of the gas turbine engine may be considered to be a nonlinear function of its inputs (u) and states (x), i.e.x=f(x,u), y=g(x,u)This implies that:
                              ⅆ                                          ⁢          x                =                                                            (                                                      ∂                    f                                                        ∂                    x                                                  )                            ⁢                              ⅆ                                                                  ⁢                x                                      +                                          (                                                      ∂                    f                                                        ∂                    u                                                  )                            ⁢                              ⅆ                                                                  ⁢                u                                              ⇒                                    Δ              ⁢                                                          ⁢              x                        ≈                                          A                ⁢                                                                  ⁢                Δ                ⁢                                                                  ⁢                x                            +                              B                ⁢                                                                  ⁢                Δ                ⁢                                                                  ⁢                u                                                                                      ⅆ                                          ⁢          y                =                                                            (                                                      ∂                    g                                                        ∂                    x                                                  )                            ⁢                              ⅆ                                                                  ⁢                x                                      +                                          (                                                      ∂                    g                                                        ∂                    u                                                  )                            ⁢                              ⅆ                                                                  ⁢                u                                              ⇒                                    Δ              ⁢                                                          ⁢              y                        ≈                                          C                ⁢                                                                  ⁢                Δ                ⁢                                                                  ⁢                x                            +                              D                ⁢                                                                  ⁢                Δ                ⁢                                                                  ⁢                u                                                        where A, B, C, and D are matrices of partial derivates and Δx and Δu are deltas from steady state conditions of the engine states and inputs, respectively. The steady state parameter values and partial derivatives are determined through small signal perturbation of a nonlinear model of the engine, for example a state of the art performance program. These equations are directly modeled within the SVM 10. The steady state baselines and partial derivatives are scheduled as a function of engine power (typically N2) and flight condition. For the latter, Reynold's Index may be used which combines the effects of altitude and Mach number. Reynold's Index is computed as Rel=δ/θ1.25. The flight envelope for which the engine numerics within the SVM 10 are represented is whatever is typical for the engine in question.
The engine model structure described above generally provides an adequate model for steady state and slow transient operation. For rapid transients or operation across a wide power range (e.g. idle to takeoff), the SVM admits a much greater error. For the purpose of parameter synthesis during these types of transients, this level of error is generally unacceptable. To mitigate the transients effects, an adaptable SVM such as that shown in FIG. 2 is essential.
One adaptable SVM technique which has been used with success is to provide a Kalman filter (KF) observer 12 which acts upon the residuals (r) formed by the output P of the SVM 10 and the actual observed measurements P from the engine 14 to provide a set of tuners ({circumflex over (x)}) which adapt the SVM 10 to match the actual observations (hence driving the residuals to zero on the average). The tuners ({circumflex over (x)}) consist of a set of engine module performance parameters such as efficiencies and flow parameters which allow the engine states and output parameters to be adjusted to allow a more faithful match to the actual engine.
A drawback of the adaptable SVM model shown in FIG. 2 is that the steady state level of the tuners may take on an unreasonable level in order to adapt a particularly deficient SVM model to a particular engine or engine type during development.
What is needed is a system architecture and a method to initialize the SVM to reflect a given initial state (in terms of the efficiencies and flow parameters) so that at installation the revised adaptable SVM matches the real engine in terms of generating average zero residuals as well as admitting the specified initial engine state.